//package com.wuxiaoge.job;
//
//import org.springframework.batch.core.Job;
//import org.springframework.batch.core.Step;
//import org.springframework.batch.core.job.builder.JobBuilder;
//import org.springframework.batch.core.launch.JobLauncher;
//import org.springframework.batch.core.repository.JobRepository;
//import org.springframework.batch.core.step.builder.JobStepBuilder;
//import org.springframework.batch.core.step.builder.StepBuilder;
//import org.springframework.batch.repeat.RepeatStatus;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.context.annotation.Bean;
//import org.springframework.jdbc.support.JdbcTransactionManager;
//import org.springframework.stereotype.Component;
//
//@Component
//public class NestedJobDemo {
//
//
//    @Autowired
//    private JobLauncher jobLauncher;
//    @Autowired
//    private JobRepository jobRepository;
//    @Autowired
//    private JdbcTransactionManager jdbcTransactionManager;
//
//    // 父任务
//    @Bean
//    public Job parentJob() {
//        return new JobBuilder("parentJob", jobRepository)
//                .start(childJobOneStep())
//                .next(childJobTwoStep())
//                .build();
//    }
//
//
//    // 将任务转换为特殊的步骤
//    private Step childJobOneStep() {
//        return new JobStepBuilder(new StepBuilder("childJobOneStep",jobRepository))
//                .job(childJobOne())
//                .launcher(jobLauncher)
//                .build();
//    }
//
//    // 将任务转换为特殊的步骤
//    private Step childJobTwoStep() {
//        return new JobStepBuilder(new StepBuilder("childJobTwoStep",jobRepository))
//                .job(childJobTwo())
//                .launcher(jobLauncher)
////                .repository(jobRepository)
////                .transactionManager(jdbcTransactionManager)
//                .build();
//    }
//
//    // 子任务一
//    private Job childJobOne() {
//        return new JobBuilder("childJobOne", jobRepository)
//                .start(
//                        childJobOneStep()
//
//                ).build();
//    }
//
//    // 子任务二
//    private Job childJobTwo() {
//        return new JobBuilder("childJobTwo", jobRepository)
//                .start(
//                        childJobTwoStep()
//                ).build();
//    }
//}
